import { Sequelize } from "sequelize";
import dotenv from "dotenv";

dotenv.config();

// const config = process.env;

const db = new Sequelize(
  process.env.DATABASE_NAME, // 使用env变量
  process.env.DATABASE_USERNAME, // 使用env变量
  process.env.DATABASE_PASSWORD, // 使用env变量
  {
    host: process.env.DATABASE_HOST,
    dialect: "mysql",
    dialectOptions: {
      connectTimeout: 60000, // 增加超时时间
    },
    pool: {
      max: 5,
      min: 0,
      acquire: 30000,
      idle: 10000,
    },
  }
);
console.log("数据库配置:", {
  name: process.env.DATABASE_NAME,
  user: process.env.DATABASE_USERNAME,
  host: process.env.DATABASE_HOST,
});
// 当flag为true时，对数据库进行同步操作。
db.doSync = async function (flag) {
  if (flag) await db.sync({ force: true });
};

export default db;
